数据呈现 | 用Stata画的三维图很奇怪怎么办?
The following article is from Stata and Python数据分析 Author 爬虫俱乐部
本文转自公众号:Stata and Python数据分析
本文作者:尚晨曦,河南大学经济学院
导读
在实证研究中,我们经常需要画图来更直观的表示数据之间的关系,而三维图更是在此基础上超越平面,实现在立体空间上的表达,不仅更加美观,而且具有很强的视觉冲击力。比如:
然而这些美丽的立体图好像都是”别人家的孩子“,同样的命令,我们自己的三维图却长这个样子:
今天小编就带大家仔细分析一下造成如此奇怪图形的原因,进而画出漂亮的三维图~
一、命令介绍
关于使用Stata画三维图的命令有以下三个:graph3d、surface、scat3。
具体命令介绍可以参考往期推文:
小编在这里就不再赘述了。我们今天主要使用的是graph3d这个命令,话不多说,我们从模仿大佬做的图开始吧~
二、操作演示
今天我们模仿的图为:
德国夫妻双方每月总劳动收入的预算约束(x轴代表第一劳动者的劳动收入,y轴代表第二劳动者的劳动收入,z轴代表每月可支配收入)
来源:Jessen, Robin, Davud Rostam‐Afschar, and Viktor Steiner. "Getting the poor to work: Three welfare increasing reforms for a busy Germany." (2015).
「第一步:安装graph3d命令」
ssc install graph3d,replace
「第二步:输入数据」
use "budget_graphs3d.dta",clear
「第三步:绘制三维图」
graph3d lab_income_m y_Basic_Income_Flat_Tax lab_income_f
图形输出:
这。。。什么鬼??别着急,我们通过graph3d的一些选项来进行调整。
「第四步:美化三维图」
1.使用cuboid加上长方体框;innergrid在长方体框上添加额外的网格线;wire将数据点连接起来;colorscheme()给数据点换个颜色。
graph3d lab_income_m y_Basic_Income_Flat_Tax lab_income_f, ///
cuboid innergrid wire colorscheme(cr)
图形输出:
是不是的确有好一些了~
2.使用xang()、 yang()把图形旋转一下;blv使长方形的顶点用黑色小圆点显示;coord()标出长方体所有点的坐标;mark设计数据点形状;equi设计数据点距离;markeroptions(msize())设计数据点大小。
graph3d lab_income_m y_Basic_Income_Flat_Tax lab_income_f, ///
cuboid innergrid wire colorscheme(cr) xang(10) yang(292) blv ///
coord(4 5 7 8) format("%12.0fc") mark equi markeroptions(msize(1))
图形输出:
基本已经大功告成了~
3.设置标签内容、位置、角度
graph3d lab_income_m y_Basic_Income_Flat_Tax lab_income_f, ///
cuboid innergrid wire colorscheme(cr) xang(10) yang(292) blv ///
coord(4 5 7 8) format("%12.0fc") mark equi ///
markeroptions(msize(1)) xlab("Primary") ///
ylab("Monthly Household Disposable Income") zlab("Secondary") ///
xlang(355) ylang(90) zlang(30) xlpos(2) ylpos(2) zlpos(12)
图形输出:
复制完成,是不是也没有那么难呢~
三、注意事项
虽说三维图很美观,视觉上层次分明,但并不是所有的数据都适合使用三维图来描述的,如果你绘制的三维图很奇怪,在这里小编有以下几点建议和改进方法:
1.数据x、y、z中最好有两个数据所组成的点均匀遍布平面,如下图所示:
2.通过xang()、 yang()调整图像角度,使得图像更立体直观。
3.分别尝试Stata中graph3d、surface、scat3三个画三维图的命令,可能有不同的收获。
4.加一些命令的选项,例如加上长方体框、改变颜色,调整数据点的大小等,也是让图像更美观的好方法。
5.生成图像以后,使用图形编辑器进行微调。
今天的分享就到这里,你学会了吗?
点击搜索你感兴趣的内容吧
往期推荐
数据Seminar
这里是大数据、分析技术与学术研究的三叉路口
欢迎扫描👇二维码添加关注